//cate.js 
 
Page({ 
 
  parentHandler(){
    console.log('父组件绑定事件')
  },

  btnHandler(){
    console.log('子组件触发事件')
  },

  // 事件处理函数需要写到page()方法中 
  handler(event){ 
    // console.log('事件触发了'); 
    console.log(event); 
  }, 
 
  getInputVal(event){ 
    console.log(event.detail.value) 
  },

  // 按钮触发的事件函数
  btnHandler2(event){
    // currentTarget 事件绑定者，也就是指：哪一个组件绑定了当前事件处理函数
    // target 事件触发者，也就是指那个组件触发了当前事件处理函数
    // currentTarget 和 target 都是指按钮，因为是按钮绑定的事件处理函数，同时点击按钮触发事件处理函数
    // 这时候通过谁来获取数据都可以
    console.log(event.currentTarget.dataset.id);
    console.log(event.target.dataset.name);
  },

  //view 绑定的事件处理函数
  parentHandler(event){
    // 点击蓝色区域(不点击按钮)
    // currentTarget 事件绑定者:view
    // target 事件触发者:view
    // currentTarget 和 target 都是指view，如果想获取view身上的数据使用谁都可以

    //点击按钮(不点击蓝色区域)
    // currentTarget 事件绑定者:view
    // target 事件触发者:按钮
    // 如果想获取 view 身上的数据，就必须使用 currentTarget 才可以
    // 如果想获取 按钮 身上的数据，就必须使用 target 才可以
    console.log(event);

    // 在传递参数时候，如果自定义属性是多个单词，单词与单词之间用中划线 - 进行连接
    // 在事件对象中会被转换为小驼峰写法
    console.log(event.currentTarget.dataset.parentId);

    // 在传递参数时候，如果自定义属性是多个单词，单词如果使用的是小驼峰写法
    // 在事件对象中会被转换为全小写
    console.log(event.currentTarget.dataset.parentId);
  },

  // 按钮绑定的事件处理函数
  btnHandler3(event){
    console.log(event.mark.id);
    console.log(event.mark.name);
  },

  // view 绑定的事件处理函数
  parentHandler3(event){
    // 点击蓝色区域(不点击按钮)
    // 通过事件对象获取到的是 view 身上绑定的数据
    // console.log(event);

    //点击按钮(不点击蓝色区域)
    // 通过事件对象获取到的是 触发事件的节点 以及 父节点身上所有的 mark 数据
    console.log(event);
  }
})